<?php

namespace app\admin\validate;

use think\Validate;

class Product extends Validate
{
    /**
     * 验证规则
     */
    protected $rule = [
        'product_name'    => 'require|max:100',
        'unit_price'      => 'require|float|gt:0',
        'image_path'      => 'max:255',
        'jin_per_bag'     => 'float|egt:0',
        'bags_per_piece'  => 'float|egt:0',
        'status'          => 'require|in:normal,hidden',
    ];
    
    /**
     * 提示消息
     */
    protected $message = [
        'product_name.require'    => '商品名称不能为空',
        'product_name.max'        => '商品名称最多不能超过100个字符',
        'unit_price.require'      => '单价不能为空',
        'unit_price.float'        => '单价必须是数字',
        'unit_price.gt'           => '单价必须大于0',
        'image_path.max'          => '图片路径最多不能超过255个字符',
        'jin_per_bag.float'       => '斤/袋必须是数字',
        'jin_per_bag.egt'         => '斤/袋必须大于或等于0',
        'bags_per_piece.float'    => '袋/件必须是数字',
        'bags_per_piece.egt'      => '袋/件必须大于或等于0',
        'status.require'          => '状态不能为空',
        'status.in'               => '状态必须是normal,hidden中的一种',
    ];
    
    /**
     * 验证场景
     */
    protected $scene = [
        'add'  => ['product_name', 'unit_price', 'image_path', 'jin_per_bag', 'bags_per_piece', 'status'],
        'edit' => ['product_name', 'unit_price', 'image_path', 'jin_per_bag', 'bags_per_piece', 'status'],
    ];
} 